package fr.umlv.ig.model;

import fr.umlv.ig.listener.ItineraryListener;


/**
 * Represents a model for an Itinerary.
 * @author Jenseric Catbgan
 * @author William Choy
 *
 */
public interface ItineraryModel {
	/**
	 * Returns the first station of the itinerary.
	 * @param itinerary the itinerary.
	 * @return the first station of the itinerary.
	 */
	public Station getStart(Itinerary itinerary);
	
	/**
	 * Returns the terminus of the itinerary.
	 * @param itinerary the itinerary.
	 * @return the Station which represents the terminus of the itineary
	 */
	public Station getEnd(Itinerary itinerary);
	
	
	public void addItineraryListener(ItineraryListener listener);
	public void removeItineraryListener(ItineraryListener listener);
	
}
